package com.linkhub.oms.common.enums.logistic;

import com.linkhub.oms.common.enums.IEnumConvert;
import lombok.AllArgsConstructor;
import lombok.Getter;

import java.math.BigDecimal;

/**
 * @Description: DeclaredValueLimitEnum
 * @Author: echo
 * @Date: 2024/5/30 14:35
 * @Version: 1.0
 */
@Getter
@AllArgsConstructor
public enum DeclaredValueLimitEnum implements IEnumConvert<String> {

    US_USD("US_USD", BigDecimal.ZERO, new BigDecimal("800")),
    CA_CAD("CA_CAD", BigDecimal.ZERO, new BigDecimal("99")),
    JP_USD("JP_USD", BigDecimal.ZERO, new BigDecimal("70")),
    JP_JPY("JP_JPY", BigDecimal.ZERO, new BigDecimal("10000")),
    AU_USD("AU_USD", BigDecimal.ZERO, new BigDecimal("640")),
    GB_GBP("GB_GBP", BigDecimal.ZERO, new BigDecimal("135")),
    GB_USD("GB_USD", BigDecimal.ZERO, new BigDecimal("155")),
    GB_EUR("GB_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    AT_USD("AT_USD", BigDecimal.ZERO, new BigDecimal("160")),
    BE_USD("BE_USD", BigDecimal.ZERO, new BigDecimal("160")),
    BG_USD("BG_USD", BigDecimal.ZERO, new BigDecimal("160")),
    HU_USD("HU_USD", BigDecimal.ZERO, new BigDecimal("160")),
    DE_USD("DE_USD", BigDecimal.ZERO, new BigDecimal("160")),
    GR_USD("GR_USD", BigDecimal.ZERO, new BigDecimal("160")),
    DK_USD("DK_USD", BigDecimal.ZERO, new BigDecimal("160")),
    IE_USD("IE_USD", BigDecimal.ZERO, new BigDecimal("160")),
    ES_USD("ES_USD", BigDecimal.ZERO, new BigDecimal("160")),
    IT_USD("IT_USD", BigDecimal.ZERO, new BigDecimal("160")),
    CY_USD("CY_USD", BigDecimal.ZERO, new BigDecimal("160")),
    LV_USD("LV_USD", BigDecimal.ZERO, new BigDecimal("160")),
    LT_USD("LT_USD", BigDecimal.ZERO, new BigDecimal("160")),
    LU_USD("LU_USD", BigDecimal.ZERO, new BigDecimal("160")),
    MT_USD("MT_USD", BigDecimal.ZERO, new BigDecimal("160")),
    NL_USD("NL_USD", BigDecimal.ZERO, new BigDecimal("160")),
    PL_USD("PL_USD", BigDecimal.ZERO, new BigDecimal("160")),
    PT_USD("PT_USD", BigDecimal.ZERO, new BigDecimal("160")),
    RO_USD("RO_USD", BigDecimal.ZERO, new BigDecimal("160")),
    SK_USD("SK_USD", BigDecimal.ZERO, new BigDecimal("160")),
    SI_USD("SI_USD", BigDecimal.ZERO, new BigDecimal("160")),
    FI_USD("FI_USD", BigDecimal.ZERO, new BigDecimal("160")),
    FR_USD("FR_USD", BigDecimal.ZERO, new BigDecimal("160")),
    HR_USD("HR_USD", BigDecimal.ZERO, new BigDecimal("160")),
    SE_USD("SE_USD", BigDecimal.ZERO, new BigDecimal("160")),
    EE_USD("EE_USD", BigDecimal.ZERO, new BigDecimal("160")),
    AT_EUR("AT_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    BE_EUR("BE_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    BG_EUR("BG_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    HU_EUR("HU_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    DE_EUR("DE_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    GR_EUR("GR_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    DK_EUR("DK_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    IE_EUR("IE_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    ES_EUR("ES_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    IT_EUR("IT_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    CY_EUR("CY_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    LV_EUR("LV_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    LT_EUR("LT_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    LU_EUR("LU_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    MT_EUR("MT_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    NL_EUR("NL_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    PL_EUR("PL_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    PT_EUR("PT_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    RO_EUR("RO_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    SK_EUR("SK_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    SI_EUR("SI_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    FI_EUR("FI_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    FR_EUR("FR_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    HR_EUR("HR_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    SE_EUR("SE_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    EE_EUR("EE_EUR", BigDecimal.ZERO, new BigDecimal("150")),
    ZA_USD("ZA_USD", BigDecimal.ZERO, new BigDecimal("30")),
    BR_USD("BR_USD", BigDecimal.ZERO, new BigDecimal("50")),
    CH_USD("CH_USD", BigDecimal.ZERO, new BigDecimal("66")),
    SG_USD("SG_USD", BigDecimal.ZERO, new BigDecimal("290")),
    MY_USD("MY_USD", BigDecimal.ZERO, new BigDecimal("100")),
    TH_USD("TH_USD", BigDecimal.ZERO, new BigDecimal("40")),
    VN_USD("VN_USD", BigDecimal.ZERO, new BigDecimal("40")),
    PH_USD("PH_USD", BigDecimal.ZERO, new BigDecimal("170")),
    CL_USD("CL_USD", BigDecimal.ZERO, new BigDecimal("41")),
    CO_USD("CO_USD", BigDecimal.ZERO, new BigDecimal("200")),
    IL_USD("IL_USD", new BigDecimal("5"), new BigDecimal("75")),
    TR_USD("TR_USD", BigDecimal.ZERO, new BigDecimal("160")),
    NZ_USD("NZ_USD", BigDecimal.ZERO, new BigDecimal("630")),
    NZ_NZD("NZ_NZD", BigDecimal.ZERO, new BigDecimal("1000")),
    KR_USD("KR_USD", BigDecimal.ZERO, new BigDecimal("150")),
    PK_USD("PK_USD", BigDecimal.ZERO, new BigDecimal("20")),
    RW_USD("RW_USD", BigDecimal.ZERO, new BigDecimal("100")),
    SA_USD("SA_USD", BigDecimal.ZERO, new BigDecimal("260")),
    QA_USD("QA_USD", new BigDecimal("5"), new BigDecimal("244")),
    KW_USD("KW_USD", new BigDecimal("5"), new BigDecimal("300")),
    BH_USD("BH_USD", new BigDecimal("5"), new BigDecimal("259")),
    JO_USD("JO_USD", BigDecimal.ZERO, new BigDecimal("280")),
    LB_USD("LB_USD", BigDecimal.ZERO, new BigDecimal("130")),


    ;

    private final String key;

    private final BigDecimal min;

    private final BigDecimal max;


    @Override
    public String getCode() {
        return getKey();
    }
}
